From 0ff991fda33ceef1cb798ed35b676587fdc558a2 Mon Sep 17 00:00:00 2001 From: "awilliam@xenbuild.aw" Date: Thu, 30 Nov 2006 15:58:21 -0700 Subject: [PATCH] [IA64] Make do_ssc() not fall into an infinite loop Instead, call panic_domain(). Signed-off-by: Isaku Yamahata --- xen/arch/ia64/xen/fw_emul.c | 6 +++--- xen/include/asm-ia64/debugger.h | 2 ++ 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/xen/arch/ia64/xen/fw_emul.c b/xen/arch/ia64/xen/fw_emul.c index e539224cd2..2a9f8fcb53 100644 --- a/xen/arch/ia64/xen/fw_emul.c +++ b/xen/arch/ia64/xen/fw_emul.c @@ -1201,9 +1201,9 @@ if (!running_on_sim) { printk("SSC_OPEN, not implemented on hardware. (ignoring vcpu_set_gr(current,8,-1L,0); break; default: - printk("ia64_handle_break: bad ssc code %lx, iip=0x%lx, b0=0x%lx... spinning\n", - ssc, regs->cr_iip, regs->b0); - while(1); + panic_domain(regs, + "%s: bad ssc code %lx, iip=0x%lx, b0=0x%lx\n", + __func__, ssc, regs->cr_iip, regs->b0); break; } vcpu_increment_iip(current); diff --git a/xen/include/asm-ia64/debugger.h b/xen/include/asm-ia64/debugger.h index 104cea9bfc..3e6a51d2e4 100644 --- a/xen/include/asm-ia64/debugger.h +++ b/xen/include/asm-ia64/debugger.h @@ -23,11 +23,13 @@ #define __ASM_DEBUGGER_H__ // this number is an arbitary number which is not used for any other purpose +// __builtin_trap() 0x0 // ski 0x80001, 0x80002 // kdb 0x80100, 0x80101 // kprobe 0x80200, jprobe 0x80300 // kgdb 0x6665 // gdb 0x99998 (#define IA64_BREAKPOINT 0x00003333300LL) +// ltrace 0x80001 (NOTE: this conflicts ski) // cdb should handle 0 and CDB_BREAK_NUM. #define CDB_BREAK_NUM 0x80800 -- 2.30.2